package com.zany.children.dao;

import com.zany.children.vo.Student;

import java.util.List;
import java.util.Map;

/**
 * 学生信息dao.
 */
public interface StudentDao {

    /**
     * 获取学生查询列表
     *
     * @param student
     * @return
     */
    List<Student> getStudentListPage(Map<String,Object> student);

    /**
     * 获聂学生查询列表count
     *
     * @param student
     * @return
     */
    Integer getStudentListPageCount(Map<String,Object> student);


    /**
     * 保存学生信息.
     *
     * @param student
     * @return
     */
    Long saveStudent(Student student);


    /**
     * 修改学生信息.
     *
     * @param student
     */
    void updateStudent(Student student);


    /**
     * 通过id获取学生信息.
     *
     * @param id
     * @return
     */
    Student getStudentById(Long id);


    /**
     * 保存学生与班级关系.
     * @param classId
     * @param stuId
     * @param creater
     * @return
     */
    void saveClassStuRela(Long classId, Long stuId, String creater);


    /**
     * 通过学生id删除学生信息,逻辑删除.
     * @param stuId
     */
    void deleteStudentById(Long stuId);


    /**
     * 通过学生id删除学生与班级 关系.
     * @param stuId
     */
    void deleteClassStuRelaByStuId(Long stuId);

}
